b282635b05569763173220bf74805d0b20e6d085,java/src/org/broadinstitute/sting/playground/gatk/walkers/variants/VECFisherStrand.java,VECFisherStrand,computePValue,#number[][]#,122

Before Change


        int[] colSums = { sumColumn(table, 0), sumColumn(table, 1) };
        int N = rowSums[0] + rowSums[1];

        pCutoff *= (double) Arithmetic.factorial(rowSums[0]);
        pCutoff *= (double) Arithmetic.factorial(rowSums[1]);
        pCutoff *= (double) Arithmetic.factorial(colSums[0]);
        pCutoff *= (double) Arithmetic.factorial(colSums[1]);

After Change


        int N = rowSums[0] + rowSums[1];

        // calculate in log space so we don't die with high numbers
        double pCutoff = factorials.get(rowSums[0])
                         + factorials.get(rowSums[1])
                         + factorials.get(colSums[0])
                         + factorials.get(colSums[1])
                         - factorials.get(table[0][0])